var runtime.gcBitsArenas

35 uses

	runtime (current package)
		malloc.go#L495: 	lockInit(&gcBitsArenas.lock, lockRankGcBitsArenas)
		mheap.go#L2894: var gcBitsArenas struct {
		mheap.go#L2925: 	head := (*gcBitsArena)(atomic.Loadp(unsafe.Pointer(&gcBitsArenas.next)))
		mheap.go#L2932: 	lock(&gcBitsArenas.lock)
		mheap.go#L2936: 	if p := gcBitsArenas.next.tryAlloc(bytesNeeded); p != nil {
		mheap.go#L2937: 		unlock(&gcBitsArenas.lock)
		mheap.go#L2946: 	if p := gcBitsArenas.next.tryAlloc(bytesNeeded); p != nil {
		mheap.go#L2949: 		fresh.next = gcBitsArenas.free
		mheap.go#L2950: 		gcBitsArenas.free = fresh
		mheap.go#L2951: 		unlock(&gcBitsArenas.lock)
		mheap.go#L2963: 	fresh.next = gcBitsArenas.next
		mheap.go#L2964: 	atomic.StorepNoWB(unsafe.Pointer(&gcBitsArenas.next), unsafe.Pointer(fresh))
		mheap.go#L2966: 	unlock(&gcBitsArenas.lock)
		mheap.go#L2995: 	lock(&gcBitsArenas.lock)
		mheap.go#L2996: 	if gcBitsArenas.previous != nil {
		mheap.go#L2997: 		if gcBitsArenas.free == nil {
		mheap.go#L2998: 			gcBitsArenas.free = gcBitsArenas.previous
		mheap.go#L3001: 			last := gcBitsArenas.previous
		mheap.go#L3002: 			for last = gcBitsArenas.previous; last.next != nil; last = last.next {
		mheap.go#L3004: 			last.next = gcBitsArenas.free
		mheap.go#L3005: 			gcBitsArenas.free = gcBitsArenas.previous
		mheap.go#L3008: 	gcBitsArenas.previous = gcBitsArenas.current
		mheap.go#L3009: 	gcBitsArenas.current = gcBitsArenas.next
		mheap.go#L3010: 	atomic.StorepNoWB(unsafe.Pointer(&gcBitsArenas.next), nil) // newMarkBits calls newArena when needed
		mheap.go#L3011: 	unlock(&gcBitsArenas.lock)
		mheap.go#L3018: 	if gcBitsArenas.free == nil {
		mheap.go#L3019: 		unlock(&gcBitsArenas.lock)
		mheap.go#L3024: 		lock(&gcBitsArenas.lock)
		mheap.go#L3026: 		result = gcBitsArenas.free
		mheap.go#L3027: 		gcBitsArenas.free = gcBitsArenas.free.next